<template>
  <div class="main">
    <div class="title">
      <a class="active" href="/login_password">密码登录</a>
      <a href="/login_code">验证码登录</a>
    </div>
    <div class="sign-up-container">
      <el-form ref="userForm" :model="user">
        <el-form-item
          class="input-prepend restyle"
          prop="email"
          :rules="[
            {
              required: true,
              message: '请输入邮箱',
              trigger: 'blur',
            },
            { validator: checkMail, trigger: 'blur' },
          ]"
        >
          <div>
            <el-input type="text" placeholder="邮箱" v-model="user.email"/>
            <i class="el-icon el-icon-message"/>
          </div>
        </el-form-item>
        <el-form-item
          class="input-prepend"
          prop="password"
          :rules="[
            {
              required: true,
              message: '请输入密码',
              trigger: 'blur',
            },
          ]"
        >
          <div>
            <el-input
              type="password"
              placeholder="密码"
              v-model="user.password"
            />
            <i class="el-icon el-icon-lock"/>
          </div>
        </el-form-item>
        <div class="btn">
          <input
            type="button"
            class="sign-in-button"
            value="登录"
            @click="submitLogin()"
          />
        </div>
      </el-form>
    </div>
  </div>
</template>

<script>
import '~/assets/css/sign.css'
import '~/assets/css/iconfont.css'
import loginApi from '@/api/login'
import cookie from 'js-cookie'

export default {
  layout: 'login_layout',
  data () {
    return {
      user: {
        email: '',
        password: '',
      },
    }
  },

  methods: {
    submitLogin () {
      loginApi
        .submitLogin(this.user)
        .then((response) => {
          if (response.data.success) {
            this.$cookies.set('qingdong_token', response.data.content.token, {
              domain: 'localhost',
            })
            loginApi.getLoginInfo().then((response) => {
              this.$cookies.set('qingdong_user', response.data.content.user_info, {
                domain: 'localhost',
              })
              this.$message({
                type: 'success',
                message: '登录成功！',
              })
              window.location.href = '/'
            })
          } else {
            this.$message({
              type: 'error',
              message: response.data.error.message,
            })
          }
        }).catch((error) => {
        this.$message({
          type: 'error',
          message: error,
        })
      })
    },
    // 校验手机号格式
    checkPhone (rule, value, callback) {
      //debugger
      if (!/^1[34578]\d{9}$/.test(value)) {
        return callback(new Error('手机号码格式不正确'))
      }
      return callback()
    },
    // 校验邮箱
    checkMail (rule, value, callback) {
      //debugger
      if (
        !/^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$/.test(
          value
        )
      ) {
        return callback(new Error('邮箱格式不正确'))
      }
      return callback()
    },
  },
}
</script>
<style>
.el-icon {
  vertical-align: middle;
  margin-top: 13px
}
</style>
